x86/PV: don't commit debug register values early in arch_set_info_guest()
authorJan Beulich <jbeulich@suse.com>
Wed, 11 Dec 2013 09:33:19 +0000 (10:33 +0100)
committerJan Beulich <jbeulich@suse.com>
Wed, 11 Dec 2013 09:33:19 +0000 (10:33 +0100)
commit398c39b6c18d0b55acfc88f5ee75b3a793e6eeec
tree53f2288ded2a199e00e1f5aad945a6fb5ecf706e
parent4ca6f9f0377a30755a299cc60a6d44ab6c3b34d0
x86/PV: don't commit debug register values early in arch_set_info_guest()

They're being taken care of later (via set_debugreg()), and temporarily
copying them into struct vcpu means that bad values may end up getting
loaded during context switch if the vCPU is already running and the
function errors out between the premature and real commit step, leading
to the same issue that XSA-12 dealt with.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
Release-acked-by: George Dunlap <george.dunlap@eu.citrix.com>
Acked-by: Keir Fraser <keir@xen.org>
xen/arch/x86/domain.c